package com.ftg.learn.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ftg.learn.system.entity.Role;
import com.ftg.learn.system.vo.RolePrivilegeVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * <p>
 * 角色表 Mapper 接口
 * </p>
 *
 * @author kangjx
 * @since 2023-04-28
 */
@Mapper
public interface RoleMapper extends BaseMapper<Role> {

    /**
     * 获取给定的所有角色对应的权限
     * @param roleIds 角色编号
     * @return List<RolePrivilegeVo>
     */
    List<Integer> allPrivilegeByRoleId(List<Integer> roleIds);

    /**
     * 获取当前登陆用户的所有权限
     * @param userid  用户编号
     * @return  List<Integer>
     */
    @Select(value = "select role_id from sys_userrole where user_id = #{userid}")
    List<Integer> allRoleWithUserId(@Param("userid") Integer userid);

}
